Systems and methods for crowd sourcing media content selection

ABSTRACT

There is provided a system including a memory storing an executable code and a processor executing the executable code to receive a plurality of video inputs, wherein each video input of the plurality of video inputs includes a video feed from an event, provide the plurality of video inputs to each of a plurality of media devices, receive a plurality of user video inputs each from a different one of the plurality of media devices, wherein each of the plurality of user video inputs is created using the plurality of video inputs, and stream each of the plurality of user video inputs as a separate media channel for display by a plurality of media devices.

BACKGROUND

Today, media broadcast companies provide coverage of media events, such as award shows, sporting events, etc., as a single video stream depicting the media event on a single broadcast channel. A production team, including a producer and an editor, view incoming video feeds from the media event and decide which parts of the event are likely to be popular with most viewers, and select those parts of the media event for broadcast. Although this single-stream model provides coverage that appeals to many viewers, this conventional approach does not provide coverage of the entire media event. Further, hiring production teams to create additional broadcast coverage that caters to the interests of all viewers is too expensive and impractical.

SUMMARY

The present disclosure is directed to systems and methods for crowd sourcing media content selection, substantially as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a diagram of an exemplary system for crowd sourcing media content selection, according to one implementation of the present disclosure;

FIG. 2 shows a diagram of an exemplary media environment using the system of FIG. 1, according to one implementation of the present disclosure;

FIG. 3 shows a diagram of an exemplary display including a plurality of video streams and a displayed media channel, according to one implementation of the present disclosure; and

FIG. 4 shows a flowchart illustrating an exemplary method of crowd sourcing content selection, according to one implementation of the present disclosure.

DETAILED DESCRIPTION

The following description contains specific information pertaining to implementations in the present disclosure. The drawings in the present application and their accompanying detailed description are directed to merely exemplary implementations. Unless noted otherwise, like or corresponding elements among the figures may be indicated by like or corresponding reference numerals. Moreover, the drawings and illustrations in the present application are generally not to scale, and are not intended to correspond to actual relative dimensions.

FIG. 1 shows a diagram of an exemplary system for crowd sourcing a media content selection, according to one implementation of the present disclosure. System 100 includes a plurality of video inputs 101 a, 101 b, . . . , 101 m, computing device 110, and a plurality of media devices 191 a, 191 b, . . . , 191 n. Computing device 110 includes processor 120 and memory 130. Processor 120 is a hardware processor, such as a central processing unit (CPU) used in computing devices. Memory 130 is a non-transitory storage device for storing computer code for execution by processor 120, and also storing various data and parameters. Memory 130 includes executable code 140. In some implementations, computing device 110 may receive video inputs 101 a, 101 b, . . . , 101 m, provides video inputs 101 a, 101 b, . . . , 101 m to media devices 191 a, 191 b, 191 n, and streams one or more media channels to media devices 191 a, 191 b, . . . , 191 n. Computing device 110 may be a media server or a third party server.

Video inputs 101 a, 101 b, . . . , 101 m may each include a video feed from an event, such as a movie premier, an award show, a news event, a sporting event, etc., and may include an audio component of the video feed. In some implementations, one or more of video inputs 101 a, 101 b, . . . , 101 m may include video feeds from one or more video cameras at a location other than the location of the event, such as a news room or an entertainment show studio. For example, an event such as an entertainment awards show may include a plurality of video inputs from the location of the award show, such as a theater where the show is taking place, and a plurality of video inputs form a studio, e.g., where hosts give commentary about the awards show. Each video input of video inputs 101 a, 101 b, . . . , 101 m may provide a live video input, a video input that includes content recorded for delayed broadcast, or other media contents. In some implementations, two or more of video inputs 101 a, 101 b, . . . , 101 m may include concurrent live video feeds, such as a first video input including a video feed of the entrance to the theater of an awards show, and a second video input including a video feed of the seating area inside the theater of the awards show.

Executable code 140 includes one or more software modules stored in memory 130 for execution by processor 120 of commuting device 110. Executable code 140 may receive video inputs 101 a, 101 b, 101 m from a corresponding plurality of video cameras. As shown in FIG. 1, executable code 140 includes presentation module 141, media channel module 143, streaming module 145, and ranking module 147. Presentation module 141 is a software module for execution by processor 120 to provide video inputs 101 a, 101 b, . . . , 101 m to media devices 191 a, 191 b, . . . , 191 n. In some implementations, presentation module 141 may provide the users with all of the video inputs from a media event, including video inputs from different locations at the media event. Presentation module 141 may allow users to select one or more video inputs from video inputs 01 a, 101 b, . . . , 101 m, such as one or more video inputs from the red carpet at an awards show. In some implementations, presentation module 141 may provide video inputs 101 a, 101 b, . . . , 101 m to media device 191 a, 191 b, 191 n and allow users to select one of video inputs 101 a, 101 b, . . . , 101 m to be streamed as a media channel and control of which video input of video inputs 01 a, 101 b, . . . , 101 m is streamed to viewers of a media channel, where the users may be viewers using their home computers at home over the Internet.

Media channel module 143 is a software module for execution by processor 120 to receive video inputs from media devices 191 a, 191 b, . . . , 191 n created using video inputs 101 a, 101 b, . . . , 101 m. A media channel may be a selection of one or more video feeds chosen by a user to be streamed to one or more of media devices 191 a, 191 b, . . . , 191 n. In some implementations, each media device of media devices 191 a, 191 b, 191 n may have an associated user account that may be used to create a media channel using the video feeds from video inputs 101 a, 101 b, . . . , 101 m, and/or watch media channels created by users of other media devices of media devices 191 a, 191 b, . . . , 191 n. In some implementations, each media channel may be associated with a user account, such as a social network account. Media channel module 143 may receive inputs from one or more of media devices 191 a, 191 b, . . . , 191 n creating one or more media channels. Each media channel may include one or more inputs from video inputs 101 a, 101 b, 101 m.

In some implementations, media channel module 143 may receive inputs from one or more of media devices 191 a, 191 b, . . . , 191 n to select a video input from video inputs 101 a, 101 b, . . . , 101 m. Media channel module 143 may receive input from media device 191 a, 191 b, . . . , 191 n including a user annotation of the selected video inputs of video inputs 101 a, 101 b, . . . , 101 m. For example, video input 101 a may include a video feed showing a celebrity speaking with an entertainment journalist, and a user who has selected video input 101 a may enter an annotation or comment including the name of each individual shown in video input 101 a and a short statement or commentary of what is depicted by video feed 101 a.

Streaming module 145 is a software module for execution by processor 120 to stream a plurality of media channels to media devices 191 a, 191 b, . . . , 191 n. In some implementations, streaming module 145 may stream a top ranked media channel to each of media devices 191 a, 191 b, . . . , 191 n, or streaming module may stream a user selected media channel to each of media devices 191 a, 191 b, . . . , 191 n, where the user of each media device 191 a, 191 b, . . . , 191 n may select a different media channel.

Ranking module 147 is a software module for execution by processor 120 to rank the plurality of media channels. In some implementations, the plurality of media channels may be ranked based on one or more of a plurality of criteria. Criteria on which the plurality of media channels may be ranked may include the number of viewers watching each media channel at a given time, an average number of viewers watching each media channel over a time period, such as the last hour or the last day, the number of viewers subscribed to each media channel, the number of comments on each media channel, etc. Ranking module 147 may analyze one or more comments associated with each media channel, where the comments may include notes or comments entered by the user who creates the media channel, and/or comments entered by one or more users viewing the media channel. In some implementations, ranking module 147 may perform a natural language analysis of the one or more comments, and ranking module 147 may include the natural language analysis of the comments associated with each media channel in the ranking of the media channels. Ranking module 147 may award benefits to a user account associated with higher ranking media channels, such as access to improved editing tools, pay or other monetary incentives, etc.

Network 185 may be a computer network, such as the Internet. Computing device 110 may be connected to network 185 via connection 167, and media devices 191 a, 191 b, . . . , 191 n may be connected to network 185 via corresponding connections 187 a-187 n. Media devices 191 a, 191 b, . . . , 191 n may be devices capable of creating, editing, and/or viewing media channels. In some implementations, media devices 191 a, 191 b, . . . , 191 n may include a television, a computer, a tablet computer, a mobile phone, etc. Each media device 191 a, 191 b, 191 n may display a main video feed including a media channel, e.g., the highest ranking media channel, a media channel selected by the user, etc. In other implementations, each media device 191 a, 191 b, . . . , 191 n may display a streaming media channel and one or more video feeds from video inputs 101 a, 101 b, . . . , 101 m.

FIG. 2 shows a diagram of an exemplary media environment to implement the system of FIG. 1, according to one implementation of the present disclosure. Diagram 200 includes media event 250, a plurality of video cameras 202 a-202 f, media interest 251, media interest 253, and media interest 255. Media event 250 may be an event including a plurality of activities in which a user may be interested, such as a conversation involving one or more persons of interest or other activity of interest to the user. For example, media event 250 may be an event such as an awards ceremony. Media interest 253 may be a reporter providing commentary on the event and acting as an anchor in the coverage of the awards ceremony, or may be a specific actor watching the event or speaking with another actor. Media interest 251 may be a focus of attention at media event 250, such as the red carpet, and have video cameras 202 a-202 c recording what happens on the red carpet. Media interest 255 may be an interview with an actor who just won an award, with video camera 202 d recording the reporter and video camera 202 e recording the actor. Presentation module 141 may allow a user of one of media devices 191 a, 191 b, . . . , 191 n to select a video feed from any camera covering event 250, such as one of cameras 202 a-202 e, and media channel module 143 may allow the user to include the selected video input 101 in a media channel for streaming to media devices 191 a, 191 b, . . . , 191 n. In other implementations, media event 250 may be a sporting event, a live television show, etc.

FIG. 3 shows a diagram of an exemplary display including a plurality of video feeds from video inputs 101 a, 101 b, . . . , 101 m and a displayed media channel, according to one implementation of the present disclosure. Diagram 300 shows video inputs 351 a-351 c, 353 d, 355 e, and 355 f, and streaming media channel 395. In some implementations, the display of each of video inputs 351 a-351 c, 353 d, 355 e, and 355 f may include a popularity ranking such as a counter that displays the number of viewers currently watching each particular video feed, enabling a user of media device 393 to determine what other users are watching. In other implementations, media channels may be displayed in order of popularity or ranking, such as the most popular or highest ranking media channel being displayed in at a certain position, e.g., in the top left position, and media channels having a lower popularity or ranking being displayed in order following the most popular/highest ranking media channel. Media device 293 may display a media channel in display area 395. In some implementations, display area 395 may display the most popular media channel, a user selected media channel, a user selected video feed from one of video inputs 101 a, 101 b, . . . , 101 m, etc. A user may choose to view the most popular and/or highest ranked media channel and a plurality of other video feeds, or the user may choose to view only the most popular/highest ranked media channel. In some implementations, comments may include a media channel creator's editorial comments and/or comments submitted by users viewing the video feed or media channel on one of media devices 191 a, 191 b, . . . , 191 n.

FIG. 4 shows a flowchart illustrating an exemplary method of crowd sourcing content selection, according to one implementation of the present disclosure. Method 400 begins at 410, where executable code 140 receives video inputs 101 a, 101 b, 101 m, wherein each video input of the plurality of video inputs includes a video feed from an event. Executable code 140 may receive the plurality of video inputs 101 a, 101 b, . . . , 101 m from a corresponding plurality of video cameras, such as one or more video cameras located at the event, and/or one or more video cameras in a studio recording coverage of the event. For example, the event may be a Hollywood awards show hosted at a theater. Video inputs 101 a, 101 b, . . . , 101 m may include a plurality of video cameras located at the theater, such as one or more recording the arrival of attendees, one or more video cameras recording the red carpet entrance of the theater, one or more video cameras recording the seating area inside the theater, and one or more cameras at a studio recording one or more anchors for the coverage of the award show.

At 420, executable code 140 provides video inputs 101 a, 101 b, . . . , 101 m to each media device of media devices 191 a, 191 b, . . . , 191 n. In some implementations, executable code, using presentation module 141, may enable the user to view one or more media channels while viewing one or more of video inputs 101 a, 101 b, . . . , 101 m at the same time. For example, media device 191 a may have a display showing a streaming media channel, such as the most popular media channel or a media channel selected by the user, and display one or more of video inputs 101 a, 101 b, . . . , 101 m. A user of media device 191 a may create a media channel by selecting one of video inputs 101 a, 101 b, 101 m to stream, and may change the selected video input at any time. The ability to choose which video input of video inputs 101 a, 101 b, . . . , 101 m is streamed allows a user watching the media channel on a second media device, e.g., media device 191 b, while concurrently viewing other media channels and video inputs to select a media channel or one of video inputs 101 a, 101 b, . . . , 101 m including the content that most interests the second user. In some implementations, a user may choose to view one or more streaming media channels, one or more video feeds from video inputs 101 a, 101 b, . . . , 101 m, or a combination of streaming media channels and video feeds from video inputs 101 a, 101 b, . . . , 101 m using one of media devices 191 a, 191 b, . . . , 191 n.

At 430, executable code 140 receives a plurality of user video inputs each from a different one of media devices 191 a, 191 b, . . . , 191 n, wherein each of the plurality of user video inputs is created using the plurality of video inputs. Each user video input may include one or more of video feeds 101 a, 101 b, . . . , 101 m. A user of a media device of 191 a, 191 b, . . . , 191 n, e.g., media device 191 a, may select a video input from video inputs 101 a, 101 b, . . . , 101 m. In some implementations, the user of media device 191 a may continue streaming the selected video input for a time, such as a few seconds, a few minutes, etc. The user of media device 191 a may continue to watch other video inputs 101 a, 101 b, . . . , 101 m, and when the user of media device 191 a sees another media event or occurrence, the user may choose to begin watching the video input showing the other event or occurrence, e.g., an interview with an actor, the announcing of a certain award, etc.

At 440, executable code 140 streams each of the plurality of user video inputs as a separate media channel for display by media devices 191 a, 191 b, . . . , 191 n. In some implementations, streaming module 145 may stream a plurality of media channels to media devices 191 a, 191 b, . . . , 191 n. Each media device 191 a, 191 b, . . . , 191 n may include a display capable of showing the media content of each media channel. Each media device 191 a, 191 b, . . . , 191 n may include speakers capable of playing an audio content of each media channel. In some implementations, media devices 191 a, 191 b, 191 n may allow a user to select one or more of video inputs 101 a, 101 b, . . . , 101 m to be included as media content of a media channel. Media devices 191 a, 191 b, . . . , 191 n may allow users to watch one or more media channels created by other users. In some implementations, executable code 140 may allow a user to continue watching a video feed from one of video inputs 101 a, 101 b, . . . , 101 m when a streaming media channel changes to another video input. In some implementations, streaming module 145 may stream a default media channel to each media device 191 a, 191 b, . . . , 191 n. A default media channel may be a media channel that is streamed to a media device, such as media device 191 a, until a user of media device 191 a selects another video input 101 a, 101 b, 101 m, or another media channel to be displayed on media device 191 a.

At 450, executable code 140, using ranking module 147, ranks each media channel of the plurality of media channels. In some implementations, ranking module 147 may rank the plurality of media channels based on at least one of a number of media devices of the plurality of media devices displaying each media channel of the plurality of media channels and a social media popularity of each media channel of the plurality of media channels. In some implementations, executable code 140 may communicate with each media device 191 a, 191 b, . . . , 191 n to determine which video inputs of video inputs 101 a, 101 b, . . . , 101 m and which media channels are being displayed. Ranking module 147 may access and analyze comments left by users associated with each video input and each media channel.

Users may provide feedback about a media channel, such as by indicating the user likes the channel, or by giving the channel a star rating, such as four (4) out of five (5) stars. In some implementations, the aggregate number of “likes” a media channel receives, or the average star rating the media channel receives, may provide a ranking of the media channel. For example, ranking module 147 may determine the rank of a media channel by comparing the number of “likes” or average star rating of the media channel with the same metrics of other media channels. Based on the ranking of the plurality of media channels, ranking module 147 may determine a highest ranked media channel. In some implementations, the highest ranked media channel may also be the most popular media channel. However, the most popular media channel may, at times, be the media channel being viewed by the greatest number of media devices among media devices 191 a, 191 b, . . . , 191 n.

At 460, executable code 140 buffers a plurality of high-ranking channels of the plurality of media channels. In streaming audio or video over the Internet, buffering may refer to downloading a certain amount of data before starting to play media contents of the video input. Having an advance supply of audio samples or video frames in memory at all times may prevent disruptions if there are momentary delays in transmission while the video input is being played. In some implementations, one or more media devices of media devices 191 a, 191 b, . . . , 191 n may buffer one or more media channels, such as a second highest ranked media channel, a user's favorite media channel, a media channel to which a user has subscribed, etc. Method 400 continues at 470, executable code 140, using streaming module 145, streams a default media channel to media devices 191 a, 191 b, . . . , 191 n. In some implementations, the default media channel may be one of a highest ranking media channel of the plurality of media channels and a user selected media channel to each media device of the plurality of media devices as a default media channel.

From the above description it is manifest that various techniques can be used for implementing the concepts described in the present application without departing from the scope of those concepts. Moreover, while the concepts have been described with specific reference to certain implementations, a person of ordinary skill in the art would recognize that changes can be made in form and detail without departing from the scope of those concepts. As such, the described implementations are to be considered in all respects as illustrative and not restrictive. It should also be understood that the present application is not limited to the particular implementations described above, but many rearrangements, modifications, and substitutions are possible without departing from the scope of the present disclosure. 

What is claimed is:
 1. A system comprising: a non-transitory memory storing an executable code; a hardware processor executing the executable code to: receive a plurality of video inputs, wherein each video input of the plurality of video inputs includes a video feed from an event; provide the plurality of video inputs to each of a plurality of media devices; receive a plurality of first user video inputs each from a different one of the plurality of media devices, wherein each of the plurality of first user video inputs is created using the plurality of video inputs; stream each of the plurality of first user video inputs as a separate media channel for display by the plurality of media devices; receive a plurality of second user video inputs, different from the first user video input, wherein each of the plurality of second user video inputs is created using the plurality of video inputs; stream each of the plurality of second user video inputs on the separate media channel; receive a plurality of user comments related to each media channel; provide the plurality of user comments to each media device of the plurality of media devices for display with the related media channel; rank each media channel of the plurality of media channels based on the plurality of user comments including a natural language analysis of the plurality of user comments for each media channel of the plurality of media channels; stream one of a highest ranking channel of the plurality of media channels and a user selected media channel of the plurality of media channels to each media device of the plurality of media devices; and display the plurality of video inputs along with the one of the highest ranking channel and the user selected media channel, wherein the one of the highest ranking channel and the user selected media channel is displayed in a main display area, and wherein the plurality of video inputs are displayed with a plurality of popularity rankings.
 2. The system of claim 1, wherein the hardware processor further executes the executable code to: rank each media channel of the plurality of media channels based on at least one of a number of media devices of the plurality of media devices displaying each media channel of the plurality of media channels and a social media popularity of each media channel of the plurality of media channels.
 3. The system of claim 2, wherein the social media popularity is based on a trending topic on at least one social media site.
 4. The system of claim 1, wherein the hardware processor further executes the executable code to: buffer a plurality of high-ranking channels of the plurality of media channels.
 5. The system of claim 1, wherein the hardware processor further executes the executable code to: receive a rating input from each media device of the plurality of media devices.
 6. The system of claim 1, wherein each media channel of the plurality of media channels is associated with a user account.
 7. The system of claim 1, wherein the hardware processor further executes the executable code to: receive a media channel subscription request to subscribe a user account associated from a media device of the plurality of media devices; in response to receiving the subscription request, subscribes the user account associated with the media device to a media channel.
 8. A method for use with a system including a hardware processor and a non-transitory memory, the method comprising: receiving, using the hardware processor, a plurality of video inputs, wherein each video input of the plurality of video inputs includes a video feed from an event; providing, using the hardware processor, the plurality of video inputs to each of a plurality of media devices; receiving, using the hardware processor, a plurality of first user video inputs each from a different one of the plurality of media devices, wherein each of the plurality of first user video inputs is created using the plurality of video inputs; streaming, using the hardware processor, each of the plurality of first user video inputs as a separate media channel for display by the plurality of media devices; receiving a plurality of second user video inputs, different from the first user video input, wherein each of the plurality of second user video inputs is created using the plurality of video inputs; streaming each of the plurality of second user video inputs on the separate media channel; receiving a plurality of user comments related to each media channel; providing the plurality of user comments to each media device of the plurality of media devices for display with the related media channel; ranking each media channel of the plurality of media channels based on the plurality of user comments including a natural language analysis of the plurality of user comments for each media channel of the plurality of media channels; streaming one of a highest ranking channel of the plurality of media channels and a user selected media channel of the plurality of media channels to each media device of the plurality of media devices; and display the plurality of video inputs along with the one of the highest ranking channel and the user selected media channel, wherein the one of the highest ranking channel and the user selected media channel is displayed in a main display area, and wherein the plurality of video inputs are displayed with a plurality of popularity rankings.
 9. The method of claim 8, further comprising: ranking, using the hardware processor, each media channel of the plurality of media channels based on at least one of a number of media devices of the plurality of media devices displaying each media channel of the plurality of media channels and a social media popularity of each media channel of the plurality of media channels.
 10. The method of claim 9, wherein the social media popularity is based on a trending topic on at least one social media site.
 11. The method of claim 8, further comprising: buffering, using the hardware processor, a plurality of high-ranking channels of the plurality of media channels.
 12. The method of claim 8, further comprising: receiving, using the hardware processor, a rating input from each media device of the plurality of media devices.
 13. The method of claim 8, wherein each media channel of the plurality of media channels is associated with a user account.
 14. The method of claim 8, further comprising: receiving, using the hardware processor, a media channel subscription request to subscribe a user account associated from a media device of the plurality of media devices; subscribing, using the hardware processor, the user account associated with the media device to a media channel in response to receiving the subscription request. 